// pages/campMap/campMap.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    
  },
// 营地位置
selectSite() {
  // 检查用户权限状态
  wx.getSetting({
    success: res => {
      if (!res.authSetting['scope.userLocation']) {
        // 用户尚未授权或已拒绝授权
        // 主动请求授权
        this.requestLocationAuthorization();
      } else {
        // 已经授权，直接获取位置信息
        this.getUserLocation();
      }
    }
  })
},
// 请求授权
requestLocationAuthorization() {
  // 请求用户授权精确位置
  wx.authorize({
    scope: 'scope.userLocation',
    success: () => {
      this.getUserLocation();
    },
    fail: (err) => {
      // 拒绝授权，提示用户收到开启
      this.showSettingPrompt()
    }
  })
},
showSettingPrompt() {
  wx.showModal({
    title: '需要位置权限',
    content: '请在设置中开启位置权限以正常使用本功能。',
    showCancel: false,
    confirmText: '去设置',
    success: (res) => {
      if (res.confirm) {
        wx.openSetting({
          success: (settingRes) => {
            if (settingRes.authSetting['scope.userLocation']) {
              // 用户在设置中开启了位置权限
              this.getUserLocation();
            } else {
              // 用户仍然拒绝位置权限
              console.log('用户仍未开启位置权限');
            }
          },
        });
      }
    },
  });
},
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    
    var that = this
        //获取当前的地理位置、速度
        wx.getLocation({
          // type: 'wgs84',
          type: 'gcj02',
          success: (res) => {
            console.log(res, "返回的数据")
            this.setData({
              latitude: res.latitude,
              longitude: res.longitude,
            });
            wx.chooseLocation({
              longitude: this.data.longitude,
              latitude: this.data.latitude,
              success: (res) => {
                console.log(res, '########');
                this.setData({
                  latitude: res.latitude,
                  longitude: res.longitude,
                  campLocation: res.address
                });
              },
              fail: err => {
                console.log(err)
              }
            })
          },
          fail: (err) => {
            console.error('获取位置失败:', err);
          },
          complete: () => {
            console.log('位置获取操作已完成');
          }
        });
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})